package com.zhang.goods.service;

import com.zhang.goods.entity.SkuSaleAttrValue;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.ArrayList;
import java.util.List;

/**
 * <p>
 * sku属性值表（销售属性）  服务类
 * </p>
 *
 * @author 创世神
 * @since 2023-10-04
 */
public interface ISkuSaleAttrValueService extends IService<SkuSaleAttrValue> {

    List<SkuSaleAttrValue> listBySkuId(Long skuId);

    List<SkuSaleAttrValue> listByAttrId(Long attrId);

    /**
     * 传入一个spu的所有skuid和销售属性attrid，返回所有的销售属性值
     *
     * @param attrId
     * @param skuIds
     * @return {@link List}<{@link SkuSaleAttrValue}>
     */
    List<SkuSaleAttrValue> listByAttrIdAndSkuIds(Long attrId, List<Long> skuIds);

    /**
     * 传入一个skuId集合和一个销售属性值，返回这个skuid集合满足具有这个value的skuid集合
     *
     * @param skuIds
     * @param value
     * @return {@link List}<{@link Long}>
     */
    List<Long> SkuIdListBySkuIdsAndValue(List<Long> skuIds, String value);
}
